# frozen_string_literal: true

# ApiResponse模块用于定义API响应的标准化格式
module ApiResponse
  # 成功响应的构造方法
  #
  # @param message [String] 响应消息，默认为"Success"
  # @param status [Integer] 状态码，默认为1
  # @param data [Hash] 响应数据，默认为空哈希
  # @return [Hash] 包含状态码、消息、成功标志和数据的哈希
  def self.success(message: "Success", status: 1, data: {})
    {
      status: status,
      message: message,
      isSucceeded: true,
      data: data
    }
  end

  # 错误响应的构造方法
  #
  # @param message [String] 响应消息，默认为"Error"
  # @param status [Integer] 状态码，默认为0
  # @return [Hash] 包含状态码、消息、成功标志和空数据的哈希
  def self.error(message: "Error", status: 0)
    {
      status: status,
      message: message,
      isSucceeded: false,
      data: {}
    }
  end
end
